Automatic electronic publishing

ABSTRACT

Embodiments of the present disclosure provide systems and methods for publishing an electronic document. Briefly described, in architecture, one embodiment of the system, among others, can be implemented as follows. A distribution module retrieves a distribution list identifying at least one user that is to be notified about the publication of the electronic document. As such, when a transfer module sends the electronic document to a network location, a messaging module automatically notifies the at least user from the distribution list of the publication of the electronic document and provides instructions to the at least one user for retrieving the electronic document from the network location. Other systems and methods are also provided.

TECHNICAL FIELD

The present disclosure is generally related to computer systems and,more particularly, is related to sharing of computer files.

BACKGROUND

Multiple persons often contribute to the preparation of differentdocuments, such as spreadsheets, text files, graphic images, etc.Accordingly, a user often sends an electronic message, such as an emailmessage, with an attachment containing an electronic document to otherusers so that the user can receive edits and or comments regarding theelectronic document. Therefore, a user often sends a multitude of copiesof the same electronic document to many different users. Suchtransmissions inefficiently utilize network resources. Further, manyusers are restricted from receiving electronic messages havingattachments of a large file size.

Thus, a heretofore unaddressed need exists in the industry to addressthe aforementioned deficiencies and inadequacies.

SUMMARY

Embodiments of the present disclosure provide systems and methods forpublishing an electronic document. Briefly described, in architecture,one embodiment of the system, among others, can be implemented asfollows. A distribution module retrieves a distribution list identifyingat least one user who is to be notified about the publication of theelectronic document. As such, when a transfer module sends theelectronic document to a network location, a messaging moduleautomatically notifies the at least one user from the distribution listof the publication of the electronic document and provides instructionsto the at least one user for retrieving the electronic document from thenetwork location.

Embodiments of the present disclosure can also be viewed as providingmethods for publishing an electronic document. In this regard, oneembodiment of such a method, among others, can be broadly summarized bythe following steps: transferring an electronic document to a networklocation for publication; in response to transferring the electronicdocument, notifying at least one user on a list of users of thepublication of the electronic document; and providing instructions tothe at least one user on the list of users for retrieving the electronicdocument from the network location.

Other systems, methods, features, and advantages of the presentdisclosure will be or become apparent to one with skill in the art uponexamination of the following drawings and detailed description. It isintended that all such additional systems, methods, features, andadvantages be included within this description, be within the scope ofthe present disclosure, and be protected by the accompanying claims.

BRIEF DESCRIPTION OF THE DRAWINGS

Many aspects of the disclosure can be better understood with referenceto the following drawings. The components in the drawings are notnecessarily to scale, emphasis instead being placed upon clearlyillustrating the principles of the present disclosure. Moreover, in thedrawings, like reference numerals designate corresponding partsthroughout the several views.

FIG. 1 is a block diagram of one embodiment, among others, of anelectronic publishing system 100 for sharing access to an electronicdocument.

FIG. 2 is a flowchart describing the functionality of one embodiment,among others, of the electronic publishing system of FIG. 1.

FIGS. 3-4 are diagrams of one embodiment, among others, of a userinterface for publishing an electronic document in the system of FIG. 1.

FIGS. 5-7 are diagrams of one embodiment, among others, of anapplication unit interface for publishing an electronic document in thesystem of FIG. 1.

FIG. 8 is a diagram of one embodiment, among others, of a notificationmessage utilized in the system of FIG. 1.

FIG. 9 is a diagram of one embodiment, among others, of a web pageutilized in the system of FIG. 1.

FIG. 10 is a block diagram representation of one embodiment, amongothers, of a file format of distributed document utilized in the systemof FIG. 1.

FIG. 11 is diagram of one embodiment, among others, of an applicationunit interface as utilized in the system of FIG. 1.

FIG. 12 is a flowchart describing the functionality of one embodiment,among others, of the system of FIG. 1.

DETAILED DESCRIPTION

FIG. 1 is a block diagram showing one embodiment, among others, of anelectronic publishing system 100 for sharing access to an electronicdocument. As shown in FIG. 1, a computer network 110, such as theInternet, is provided. The electronic publishing system 100 furtherincludes at least one client system 120 and at least one server system130 connected to the computer network 110. The server system 130provides services for the client system 120 via the network 110. Theserver system 130 includes a storage 132 for storing files, a web (orWWW) server 134 for reading files from the storage 132 and sending thefiles to the client system 120, a file transfer server 136 for receivinginformation from the client system 120 and storing the information inthe storage 132, a messaging server 138 for sending electronic messagesto and receiving electronic messages from the client system 120.

The client system 120 includes storage 122, a web (or WWW) browser 124,an application unit 126, a file transfer module 128, and a messagingclient 129. The web browser 124 receives files from the web server 134.The storage 122 stores the files received by the web browser 124. Theapplication unit 126 reads files stored in the storage 122 and executesan application to access the files. For example, for differentembodiments, the application unit 126 may be an image viewer, a texteditor, a movie player, etc. The file transfer module 128 reads updatedfiles from the storage 122 and sends the updated files to the serversystem 130. The messaging client 129 sends messages to the messagingserver 138 and receives messages from the messaging server 138.

In the system described above, when the client system 120 sends arequest for file transfer to the server system 130, the web server 134reads a file from the storage 132, and sends the file to the clientsystem 120. In the client system 120, the web browser 124 receives thefile, stores it in the storage 122, and communicates with the web server134.

The application unit 126 reads the file from the storage 122, and, then,executes an application to view, play, or edit the file or to access thecontents in a particular way. An edited or updated file is stored in thestorage 122 again. The file transfer module 128 reads the updated filefrom the storage 122, and transfers the file to the server system 130via file transfer server 136. The file transfer server 136 stores thefile in storage 132. The file transfer server and module may employ thefile transfer protocol (FTP), which is a protocol used for a fileexchange between host machines on a TCP/IP-based network.

In addition to the file transfer system described above, an electronicdocument in the web server 134 can be transferred to the client system120 when the web browser 124 of the client system 120 requests theelectronic document by using a uniform resource locator (URL). Then, anapplication unit 126 is used for editing the file and storing the filein the storage 122. An operating system (OS)-built-in function or a webbrowser application having an FTP function is used to send theelectronic document from the client system 120 (executing web browser124) to the server system 130 (executing the web server 134).

Referring now to FIG. 2, one embodiment, among others, of a flowchartdescribing the functionality of the electronic publishing system 100 isprovided. First, a user selects (210) an electronic document fromstorage 122. The electronic document can be any computer file containedin storage 122, for some embodiments. For example, the electronicdocument may be a media file, such as a text file, a video file, apresentation slideshow, a music file, etc. that is capable of beingviewed/played and/or edited by other users. Next, the user specifies(220) a network location for storing a copy of the electronic documenton the computer network 110 so that other users may download a copy ofthe electronic document from the network location. The network locationcan be specified as a domain name and path for the network storagespace. The user further specifies (230) network (or electronic)addresses of other users who are to be notified about the availabilityor publication of the electronic document at the network location. Forexample, network addresses can be email addresses and/or instant messageaddresses, for different embodiments, among others. Via the specifiednetwork addresses, the other users are to be provided notificationmessages containing instructions for accessing the electronic documentat the network location. Therefore, upon a user command, the electronicdocument is copied or transferred (240) to the network locationspecified by the user. In addition, notification messages areautomatically sent (250) to specified users with instructions fordownloading the electronic document from the network location. Thepublication and notification operations, for various embodiments, arelaunched as background processes within the client system 120.

To implement the process of FIG. 2, various embodiments of theelectronic publishing system 100 may be employed. For example, FIG. 3shows select components of one embodiment, among others. In FIG. 3, auser interface 300 for client system 120 is provided in the form of aweb page 310 retrieved by a web browser 124 from a web server 134. Onthe web page 310, a user control 312 is shown for configuring settingsassociated with the publication of an electronic document. The usercontrol 312 has tabs 315 that can be selected by a user. Each tab, whenselected, presents different configurable settings to the user. Forexample, in FIG. 3, the ADMIN Tab 315 a has been selected and showsoptions for specifying a network location for storing an electronicdocument. As shown, an input box 320 is displayed so that a user canidentify the address of a host server for the network location, such asthe domain name or a Hypertext Transfer Protocol (HTTP) address of afile server that is the host of the user's network storage space. Forthe specified host, the user also provides his user-ID and password forlogging in to the host server via input boxes 330, 335. The web browserinterface 300 sends setting information to web server 134, where webserver 134 saves the setting information in an account of the user.Therefore, the user can store pertinent setting information with a webserver 134 for automatically publishing an electronic document.

Accordingly, in FIG. 4, the PUBLISH tab 315 b has been selected andoptions are presented for configuring settings to post or publish anelectronic document to the network storage space identified on the Adminscreen of FIG. 3. As shown, a user can select an electronic document(from a local storage space) by manually typing in the name and locationof the electronic document in an input box 415 or by utilizing adropdown menu (by selecting the Dropdown Menu button 416) that enables auser to choose the electronic document from a local file directory.Further, the user can specify others users who are to be allowed to viewthe published document after the electronic document has been publishedat the network storage space. Typically, the user is prompted to specifynetwork or electronic addresses, such as email or instant messagingaddresses, for addressing electronic notifications that are sent to theother users. The list of electronic addresses may be generally referredto as a distribution list. As shown, an input box 420 is provided forspecifying one or more network addresses for receiving electronicmessages (e.g., email addresses, among others). To compose thedistribution list, the web page 310 may also provide an Address Bookbutton 425. For example, in some embodiments, the web server 134 maymaintain an address book or list of network addresses of persons for theuser. Therefore, upon selection of the Address Book button 425, the webbrowser 124 provides a user interface for selecting entries from theaddress book and placing the selected entries in the distribution list.To save the current settings that have been specified by a user, theuser can select the SAVE button 420. Selection of the SAVE button 420causes setting information to be saved by the web server 134 so that thesetting information can be accessed at a later time. Publication of aselected electronic document and automatic notifications of publicationoccur after the user selects the PUBLISH NOW button 435 (and the userhas provided the pertinent information in the input boxes fordistribution and notification).

For some embodiments, after selection of the PUBLISH NOW button 435, theweb browser 124 directs the file transfer module 128 to upload ortransfer the specified electronic document to the specified networklocation, as designated in the user control 312. Further, the webbrowser 300, in one embodiment, among others, directs the messagingclient 129 to send notification messages to the addresses listed on thedistribution list. The notification messages, for some embodiments,contain an embedded link (e.g., a URL link) to the network location ofthe electronic document. Upon selection of the embedded link, a webbrowser is activated and directly retrieves the electronic document orretrieves a web page providing a hyperlink to the electronic document.Correspondingly, in another embodiment, among others, the distributionlist is transferred to a web server 134 after the PUBLISH button 315 bhas been selected by the user. The web server 134 directs the messagingserver 138 to send the notification messages to the users on thedistribution list in a similar manner as described above.

In accordance with other embodiments, the user control 312 forspecifying publication settings, may be a software module on a user'spersonal computer (not shown). In this regard, the software modules isinstalled on a user's personal computer and, thereafter, are launched bythe user. Further, setting information may be stored locally on a user'spersonal computer in lieu of being stored at a server location.

Next, FIG. 5 describes another embodiment of selected components inclient system 120 for implementing the process of FIG. 2. In FIG. 5, auser can open an electronic document, such as a text file 520, with anapplication unit 126, such as a text editor 510. With the text editor510, the user can edit and modify the text file 520. Further, the texteditor 510 can be used to create new text files. For example, to save atext file 520 that the user is currently working on with the same filesettings associated with the file (e.g., same file format), the usertypically selects a SAVE option 534 from a taskbar menu 530 or types ina shortcut code, such as Control S, from a keyboard. In accordance withthe present disclosure, a user can also elect to save a file with newassociated file settings, such a new file name or file format, forexample. Accordingly, a user can select the SAVE AS option 534 from thetaskbar menu. In the example shown, a user selects the SAVE AS option534 which launches a SAVE AS user control 610 to be displayed, as shownin FIG. 6.

In FIG. 6, a user can specify a filename 612 for the opened document, alocal storage space 614 for storing a copy of the document, and a fileformat 616 for organizing the contents for the document. In the exampleshown, a user has selected to save the opened document as a “distributeddocument” that designates that the file is intended to be published toother users, in accordance with various embodiments of the presentdisclosure. For example, instead of saving the text file as a fileformat associated with an extension such as .txt, .doc, .rtf, .ws, etc.,the text file is formatted at as a distributed document. Accordingly, anelectronic document saved as a “Distributed Document” has additionalsettings associated with the document, as is discussed below.

For example, in some embodiments, by selecting an Options forDistribution button 620 on the SAVE AS user control 610, an interface710 is provided for configuring settings associated with a distributeddocument, as shown in FIG. 7. Typically, the user is prompted to specifynetwork or electronic addresses (e.g., email addresses, IM addresses,etc.) within a distribution list for sending notification messages toother users. The notification messages are intended to notify recipientsthat an electronic document has been published and is available forretrieval.

As shown in FIG. 7, an input box 715 is provided for specifying one ormore network addresses for receiving electronic messages (e.g., emailaddresses, among others). To compose the distribution list, theinterface 710 may also provide an Address Book button 720. For example,in some embodiments, if a user selects the Address Book button 720, thenthe interface 710 generates a request to generate an address book userinterface (not shown). The address book user interface provides accessto locally stored network addresses of other users, such as the emailaddresses of various friend and family members. As is discussed below,the distribution list for the “distributed document” is saved as part ofthe electronic document under this file format.

Additional user settings 730 for the distributed document include a hostname 732 or address for storing the electronic document on a host serverof the communication network 110 along with a user-ID 734 and password736 for logging into a host server. The network location for storing thedocument is saved as part of the distributed document, in someembodiments, along with the distribution list. In accordance with theembodiment of FIG. 7, a user who establishes an account with a hostserver is authorized to not only access a storage space designated forthe user on the host server, but also is authorized to grant permissionvia a “key” to other users to also access the user's storage space. The“key” is provided to other users via notification messages. Further, the“key” may be stored as part of the format of the distributed document asdiscussed hereinafter.

As shown, to publish an electronic document at a network location andautomatically notify other users of its availability, a user caninitially designate or save an electronic document as a distributeddocument and configures the settings associated with the electronicdocument. Then, as shown in the example of FIG. 5, a user can select asingle command (via selecting the PUBLISH option 536 on the file menu530) to start the publication and notification processes.

After selecting the PUBLISH option 536, the application unit 126, insome embodiments, directs the file transfer module 128 to transfer theelectronic document (“distributed document”) to the network locationspecified in the settings that are stored in the formatting of thedistributed document, in some embodiments. Further, a key is generatedthat provides access for others to access the stored electronicdocument. The client system 120 in some embodiments, and the serversystem 130 in others, can generate the key, as explained below.

For example, for embodiments where the client system 120 generates andsends notification messages to other users on the distribution list, theapplication unit 126 (or another software module) can retrieve thedistribution list from the contents of a selected distribution document.The messaging client 129 prepares notification messages to the usersidentified on the distribution list. Within each notification message,the messaging client 129 includes a key that has been generated by thefile transfer module 128 and communicated to the file transfer server136. The file transfer server 136 associates the key with thedistributed document that is also sent to the file transfer server 136by the file transfer module 128 for storing at a network location thatis specified in the contents of the distributed document. This networklocation is also included in the notification messages prepared by themessaging client 129 via a URL link. Therefore, activation of the URLlink (by a recipient of a notification message) directs a web browser ofa recipient to request the web server 134 to transmit a web page that isassociated with the key. The web page provides access to the distributeddocument to recipients of the notification message. Note, file transferand notification operations run as background processes on the clientsystems and are not visible to the user, for many embodiments.

On the other hand, for embodiments where the server system 130 generatesand sends notification messages to other users on the distribution list,the distributed document is uploaded to a file transfer server 136 bythe file transfer module (after successful log in using user-ID andpassword) (or other file transfer method). Upon receipt of thedistributed document, the file transfer server 136 can retrieve thedistribution list and network location from the body of the distributeddocument. Accordingly, it is understood that the file transfer server136 is familiar with the structure of the distributed document format,for such embodiments. Further, the file transfer server 136 can directthe messaging server 138 to compose notification messages to the userson the distribution list. The notification messages are to containembedded links for retrieving a web page from the web server 134. Theweb page is to provide access to the distributed document. The embeddedlink may also contains a string identifying a key or authorization codefor gaining access to the web page associated with the link.Correspondingly, the web server 134 does not transmit a requested webpage without receiving the proper key in the requesting HTTP link.Additional information may also be referenced in the embedded link as isdiscussed hereinafter.

Next, FIG. 8 shows one embodiment, among others, of a notification emailmessage 810, as viewed by an email client interface 805, among others.The notification message 810 displays the person who initiated thesending of the notification message in the From field 822 and displaysthe recipient of the message in the To field 824. Within the body of themessage, an embedded link 830 is provided. For this particular example,the embedded link 830 contains a URL link to a server identified as“HOST.XXX.N” and directs the server to execute a common gatewayinterface (CGI) script file named “Find” in the cgi-bin directory of theserver. In addition, the link provides string arguments for execution ofthe Find program. In this example, the string arguments include a key orauthorization code (“81026887”) that has been associated with adistributed document that has been uploaded to a file transfer server.Therefore, the Find program or script instructs a web page to betransmitted to the requesting web browser after authenticating the keyprovided by the web browser.

Referring now to FIG. 9, a sample web page 910 is provided for accessinga distributed document from a network location (as viewed by web browserinterface 915). For this embodiment, after a recipient has selected theembedded link 830provided in a notification message 810, a web browserof the recipient retrieves a web page 910 from web server 134. In theweb page 910 shown, a user is provided an icon 920 that is linked to therecently published electronic document. In alternative, for someembodiments, the web server 134 may provide direct access to the mostrecently updated document after activation of the embedded link 830.

Referring back to FIG. 9, to view previous published documents, the webserver provides a Previous Versions icon 920 that is linked to a webpage for providing access to other published documents. In accordancewith the present disclosure for some embodiments, the retrieved web page910 may also track visitors that have viewed the web page 910 providingaccess to the electronic document, as shown by display box 930. Onemanner, among others, of a procedure for tracking which users haveaccessed an electronic document is to include in the embedded link 830of the notification message, a string identifying the user accessing thelink. For example, in FIG. 8, the email address RUBY@MAIL.AAA iscontained within a string of the link 830 to identify the recipient ofthe notification message 810. Therefore, the name or email address canbe provided as an argument or string to a web server 134 for composing aweb page 910 showing visitor-tracking information. In the example shownin FIG. 9, two users have been noted to have accessed the web page 910providing access to the electronic document.

In accordance with some embodiments of the present disclosure, aspreviously discussed, a new file format is provided for electronicdocuments, that has been labeled a “distributed document.” FIG. 10 showsone representation of the file format, for one embodiment, among others.For example, consider a graphic image file or document 1010 in a JPEGformat. The JPEG document, in some embodiments, is capable of beingviewed with an application unit 126, such as an image viewer 1100, thatis configured to view JPEG and other graphic file formats, as shown inFIG. 11. The image viewer 1100 is also configured to convert fileformats from one type to another. Therefore, the original document 1010that is in a JPEG format can be converted to a new distributed (JPEG)document, as represented by document 1030. For some embodiments, the newdistributed (JPEG) document contains a network location for publishingthe document, a distribution list for automatically publicizing thepublication, and a key to authorize others user to access the publisheddocument. In the example shown in FIG. 10, a header portion 1020 isadded to the original or native JPEG file 1020 to form the distributed(JPEG) document 1030. The new header portion 1020 contains thedistribution settings (network location, distribution list, key, etc.)associated with the distributed document. Accordingly, devices that areto access the contents of the new header would be familiar with the sizeand organization of header contents.

Now, consider a situation where a recipient downloads the electronicdocument, in a distributed document format, to his or her computer, forexample. The user opens the document with an application unit 126, suchas image viewer 1100, and makes modifications to the content of thedocument. The user then decides to publish the document so that otherscan view the document. Since the user downloaded the document as adistributed document, the document still contains, as part of its fileformat, the original distribution list, the network location for storingthe document, and the key authorizing permission to upload the documentto the network location, as indicated by FIG. 10. Therefore, arecipient, in some embodiments, can save the document by selecting“SAVE” 1110 on the file menu 1105 of an image viewer 1100, for example.Thus, after selecting a PUBLISH option 1120 on the file menu 1105, thenew/modified/unchanged distributed document is uploaded to the samelocation as the earlier version of the distributed document. Further,since the distribution list has not changed, the same group of peoplewill be notified about the new publication. As such, for someembodiments, the distribution list of the original document includes theemail address of the originator of the original document, so that theoriginator can receive notifications about any new versions of thedocument that are produced by other users. Thus, various embodimentsprovide ability for anyone in the distribution list to publish updatesand to automatically notify everyone in a distribution list of anupdate. Correspondingly, a web server 134 may be configured toautomatically indicate on a web page which updates are the most currentand to provide a hierarchical view of updates from most recent tooldest.

Now, in a different situation, a recipient who retrieves an electronicdocument, in a distributed document format, and modifies the content ofthe electronic document may choose to configure new settings associatedwith the distributed document. Therefore, a recipient can choose toselect the SAVE AS option 1130 on the file menu 1105 of an applicationunit, such as an image viewer 1105, for example. Thus, the recipient isthen able to specify a new distribution list, new network location, andcan specify his or her host account information for the SAVE ASoperation 1130. After specifying new/modified/unchanged distributionsettings, the modified distributed document can be published to thelocation identified by the user and notification messages canautomatically be sent to users on the new/modified/unchangeddistribution list along with a newly generated key for gaining access tothe newly published document.

Referring now to FIG. 12, one embodiment, among others, of a flowchartdescribing the functionality of the electronic publishing system 100 isprovided. First, a user receives (1210) a notification that anelectronic document has been published. Included in the notification isa key to access the published document at a specified network location.For example, the key and network location may be indicated by ahyperlink contained in the notification message. Accordingly, a userretrieves (1220) the electronic document from the network location byproviding the key to the host server storing the document. Anapplication unit 126 of the user opens (1230) the electronic documentthat was retrieved from the host server. The user edits the document andchooses to save (1250) the document with its current formatting. As aresult, the user is not prompted to modify the distribution list,network location information, and/or authorization key that are saved aspart of the distributed document. Therefore, after a user selects topublish the document, the electronic document, as a background series ofprocesses, is transferred (1260) to the saved network location andnotification messages are automatically sent (1270) to users on thedistribution list and are given an authorization key to access thepublished document.

Alternatively, a user can choose to save the electronic document withnew distribution settings. As such, the user is prompted (1280) tospecify a new or modified distribution list and network location.Further, a new distribution key is generated (1290) for the document andsaved (1292) along with the distribution list, and network location, aspart of the distributed document. A user-ID and password is alsoreceived (1294) from the user for creating a session with the hostserver of the network location. After receiving a command to publish thedocument, the application unit 126 directs, in a background series ofprocesses, the distributed document to be transferred (1296) to the newor modified network location by logging the user into the host serverwith the user's user-ID and password. Further, notification messages areautomatically sent (1298) to user(s) on the distribution list along withthe new authorization key for accessing the newly published electronicdocument.

The client system 120 and server system 130 of embodiments of thepresent disclosure can be implemented in hardware, software, firmware,or a combination thereof In some embodiments, the client 120 and serversystems 130 are implemented in software or firmware that is stored in amemory and that is executed by a suitable instruction execution system.If implemented in hardware, as in alternative embodiments, those skilledin the art would appreciate that the client system 120 and server system130 can be implemented with any or a combination of the followingtechnologies: a discrete logic circuit(s) having logic gates forimplementing logic functions upon data signals, an application specificintegrated circuit (ASIC) having appropriate combinational logic gates,a programmable gate array(s) (PGA), a field programmable gate array(FPGA), etc.

For some embodiments, among others, process descriptions or blocks inflow charts are understood as representing modules, segments, orportions of code which include one or more executable instructions forimplementing specific logical functions or steps in the process.Alternate implementations are also included within the scope of someembodiments in which functions may be executed out of order from thatshown or discussed, including substantially concurrently or in reverseorder, depending on the functionality involved, as would be understoodby those reasonably skilled in the art. Ordered listing of executableinstructions for implementing logical functions, can be embodied in anycomputer-readable medium for use by or in connection with an instructionexecution system, apparatus, or device, such as a computer-based system,processor-containing system, or other system that can fetch theinstructions from the instruction execution system, apparatus, or deviceand execute the instructions.

In the context of this document, a “computer-readable medium” can be anymeans that can contain, store, communicate, propagate, or transport theprogram for use by or in connection with the instruction executionsystem, apparatus, or device. The computer readable medium can be, forexample but not limited to, an electronic, magnetic, optical,electromagnetic, infrared, or semiconductor system, apparatus, device,or propagation medium. More specific examples (a nonexhaustive list) ofthe computer-readable medium would include the following: an electricalconnection (electronic) having one or more wires, a portable computerdiskette (magnetic), a random access memory (RAM) (electronic), aread-only memory (ROM) (electronic), an erasable programmable read-onlymemory (EPROM or Flash memory) (electronic), an optical fiber (optical),and a portable compact disc read-only memory (CDROM) (optical). Notethat the computer-readable medium could even be paper or anothersuitable medium upon which the program is printed, as the program can beelectronically captured, via for instance optical scanning of the paperor other medium, then compiled, interpreted or otherwise processed in asuitable manner if necessary, and then stored in a computer memory.

It should be emphasized that the above-described embodiments of thepresent disclosure are merely possible examples of implementations,merely set forth for a clear understanding of the principles of thedisclosure. Many variations and modifications may be made to theabove-described embodiments without departing substantially from theprinciples of the present disclosure. For example, while the foregoingdescription and accompanying drawings specifically describe electronicmessaging involving instant messaging (IM) and email, it will be clearto one of ordinary skill in the art that the systems and methodspresented herein may be extended to other messaging techniques andprotocols. All such modifications and variations are intended to beincluded herein within the scope of this disclosure.

1. A system for publishing an electronic document, the systemcomprising: a processor comprising hardware, the processor executing adistribution module to retrieve, from the electronic document, adistribution list identifying a plurality of users that is to benotified about a publication of the electronic document, wherein theelectronic document comprises a header that contains the distributionlist; a transfer module to send the electronic document to a networklocation designated for a first user and associated with a unique keyfor accessing the network location; a messaging module to automaticallynotify the plurality of users from the distribution list of thepublication of the electronic document by the first user and to provideinstructions to the plurality of users from the distribution list forretrieving the electronic document from the network location designatedfor the first user via an electronic message, wherein the electronicmessage contains a hyperlink that references the electronic documentfrom the network location; and an application unit for displaying fileinformation to the plurality of users, the application unit configuredto modify the distribution list and to save the modified distributionlist in the header of the electronic document.
 2. The system of claim 1,wherein the messaging module also provides an authorization code to theplurality of users from the distribution list, the authorization codeenabling the plurality of users to retrieve the electronic document. 3.The system of claim 1, wherein the hyperlink request a web pageproviding access to the electronic document.
 4. The system of claim 3,wherein the web page displays a list of previous visitors to the webpage.
 5. The system of claim 1, wherein the application unit is furtherconfigured to save the network location as part of the electronicdocument format.
 6. The system of claim 5, wherein the application unitis further configured to save an authorization code as part of theelectronic document format.
 7. A method for publishing electronicdocuments, comprising: transferring an electronic document to a networklocation designated for a first user for publication by the first user,the electronic document comprising a header that contains a distributionlist identifying a plurality of users to be notified about a publicationof the electronic document by the first user and are authorized toaccess the electronic document after publication, wherein the header ofthe electronic document is configured to store a modified distributionlist when a modification is made to the distribution list, and whereinthe network location has associated therewith, a unique key foraccessing the network location; in response to transferring theelectronic document, retrieving the distribution list from theelectronic document; notifying the plurality of users on thedistribution list via an electronic message, wherein the electronicmessage contains a hyperlink that references the electronic documentfrom the network location; and providing instructions to the pluralityof users on the distribution list for retrieving the electronic documentfrom the network location.
 8. The method of claim 7, further comprising:restricting access to the electronic document to the plurality of userson the distribution list.
 9. The method of claim 7, further comprising:including within the format of the electronic document the address ofthe network location of the electronic document.
 10. The method of claim7, wherein the restricting access to the electronic document comprises:providing an authorization code to the plurality of users on thedistribution list that is required to access the electronic document,wherein the instructing step includes the authorization code with auniform resource locator for the electronic document stored at thenetwork location.
 11. The method of claim 7, further comprising:retrieving the electronic document from the network location after theelectronic document has been published; updating the electronicdocument; publishing an updated version of the electronic document tothe network storage space by utilizing distribution informationcontained in the format of the electronic document; and automaticallynotifying the plurality of users on the distribution list of the updatedversion by utilizing the distribution information contained in theformat of the electronic document.
 12. The method of claim 7, furthercomprising: retrieving the electronic document from the network locationafter the electronic document has been published; editing the electronicdocument; modifying distribution information contained within the formatof the electronic document; publishing a new version of the electronicdocument to a new network location by utilizing the modifieddistribution information contained in the format of the electronicdocument; and automatically notifying users of the publication of thenew version by utilizing the modified distribution information containedin the format of the electronic document.
 13. The method of claim 7,further comprising: tracking which users from the plurality of usershave accessed the electronic document from the network location.
 14. Anon-transitory computer readable medium having a computer program forpublishing electronic documents, the program for performing:transferring an electronic document to a network location designated fora first user for publication by the first user, the electronic documentcomprising a header that contains distribution information, thedistribution information comprising a distribution list identifying aplurality of users to be notified about a publication of the electronicdocument by the first user and are authorized to access the electronicdocument after publication, the network location designated forpublication, and a unique key for accessing the network location,wherein the header of the electronic document is configured to store amodified distribution list when a modification is made to thedistribution list; in response to transferring the electronic document,retrieving the distribution list from the electronic document; notifyingthe plurality of users on the distribution list via an electronicmessage, wherein the electronic message contains a hyperlink thatreferences the electronic document from the network location; providinginstructions to the plurality of users on the distribution list forretrieving the electronic document from the network location; andrestricting access to the electronic document to the at least one useron the distribution list.
 15. The medium of claim 14, the programfurther comprising: retrieving the electronic document from the networkstorage space after the electronic document has been published; updatingthe electronic document; publishing an updated version of the electronicdocument to the network storage space by utilizing the distributioninformation contained in the format of the electronic document; andautomatically notifying the plurality of users on the distribution listof the updated version by utilizing the distribution informationcontained in the format of the electronic document.
 16. The medium ofclaim 14 the program further comprising: retrieving the electronicdocument from the network location after the electronic document hasbeen published; editing the electronic document; modifying the networklocation designated for publication contained in the header of theelectronic document; publishing a new version of the electronic documentto a new network location by utilizing the modified network locationdesignated for publication; and automatically notifying a plurality ofusers of the publication of the new version by utilizing the modifieddistribution information contained in the header of the electronicdocument.
 17. The medium of claim 14 the program further comprising:retrieving the electronic document from the network location after theelectronic document has been published; modifying the distribution listof the electronic document; generating a new unique key for accessingthe network location; saving the modified distribution list and the newunique key in the header of the electronic document; upon publication ofthe electronic document, automatically notifying a plurality of users ofthe publication of the electronic document and the new unique key basedon the modified distribution list.